﻿using Shop.Model.DB;
using Shop.RemoteModel.PageModule.Model;
using Shop.RemoteModel.PageModule.ModuleConfig;
using WeDonekRpc.Client;
using WeDonekRpc.Helper;
using WeDonekRpc.Helper.IdGenerator;
using WeDonekRpc.SqlSugar;

namespace Shop.Repository.lmpl
{
    internal class PageModuleRepository : ShopBaseRepository<DBPageModule, long>, IPageModuleRepository
    {
        public PageModuleRepository ( ISqlClientFactory factory ) : base(factory)
        {
        }
        public long Add ( PageModuleAdd data )
        {
            DBPageModule add = data.ConvertMap<PageModuleAdd, DBPageModule>();
            add.Id = IdentityHelper.CreateId();
            base.Insert(add);
            return add.Id;
        }
        public void SetSort ( ModuleSortSet[] sorts )
        {
            if ( !base.Update(sorts) )
            {
                throw new ErrorException("shop.page.module.sort.set.fail");
            }
        }
    }
}
